package com.seari.custody.mapper;

import com.seari.custody.bean.*;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import sun.security.x509.OtherName;

import javax.print.attribute.standard.MediaSize;
import java.util.List;
import java.util.Map;

@Repository
public interface ProjectManageMapper {

    List<Map<String, String>> queryProListByProperty(String versionType,String selectType,String userNumber,String sort, String projectNameSelect,String startTime,String endTime,String proID);

    Project queryProByProID(String proID);

    List<Project> queryProByProNO(String proNO);

    List<TechnicalAdvice> queryTechnicalAdviceByProID(String proID, String reviewStatus);

    List<SpecialProtection> querySpecialProtectionByProID(String proID);

    List<File> getProFileByProID(String proID,List<String> flowNum,List<String> outLineNum);

    List<Map<String, String>> queryTechnicalAdviceFileByForProManage(String proID, String reviewStatus);

    List<Map<String, String>> querySpecialProtectionFileByForProManage(String proID);

    void insertCreateFolder(CreateFolder createFolder);

    void insertOtherFile(OtherFile otherFile);

    List<OtherFile> queryOtherFileByFolderID(@Param("idList") List<String> idList,@Param("fileName")String fileName);

    CreateFolder queryFolderByID(String folderID);

    List<CreateFolder> queryFolderByProID(String proID);

    void updateCreateFolder(CreateFolder updFolder);

    void updateOtherFile(OtherFile otherFile);

    OtherFile queryFileByID(String id);

    List<String> queryOutlineNumber(String proID);

    List<String> queryFlowNumber(String proID);

    List<Map<String, String>> queryFlowStatus(String type, String proID, String flow, String num);

    Map<String, String> queryFristFlow(String flowNum, String proID,String outLineNum);
}